cddde85a681ba2ecdc8a142481f983cf50221ddf,platform/platform-impl/src/com/intellij/openapi/editor/actions/MoveCaretDownWithSelectionAction.java,Handler,execute,#Editor#Caret#DataContext#,45

Before Change



    @Override
    public void execute(Editor editor, @NotNull Caret caret, DataContext dataContext) {
      if (editor.isColumnMode() && editor.getCaretModel().supportsMultipleCarets()) {
        caret.clone(false);
      }
      else {
        editor.getCaretModel().moveCaretRelatively(0, 1, true, editor.isColumnMode(), true);

After Change


  private static class Handler extends EditorActionHandler {
    @Override
    public void execute(Editor editor, @Nullable Caret caret, DataContext dataContext) {
      if (!editor.getCaretModel().supportsMultipleCarets()) {
        editor.getCaretModel().moveCaretRelatively(0, 1, true, editor.isColumnMode(), true);
        return;
      }
      if (editor.isColumnMode()) {
        EditorActionUtil.cloneOrRemoveCaret(editor, caret == null ? editor.getCaretModel().getPrimaryCaret() : caret, false);
      }
      else {
        CaretAction caretAction = new CaretAction() {
          @Override
          public void perform(Caret caret) {
            caret.moveCaretRelatively(0, 1, true, true);
          }
        };
        if (caret == null) {
          editor.getCaretModel().runForEachCaret(caretAction);
        }
        else {
          caretAction.perform(caret);